package cn.lt.domain.strategy.repository;

import cn.lt.domain.strategy.model.entity.StrategyAwardEntity;
import cn.lt.domain.strategy.model.entity.StrategyEntity;
import cn.lt.domain.strategy.model.entity.StrategyRuleEntity;

import java.util.HashMap;
import java.util.List;

/**
 * 策略仓储实现
 *
 * @author lt
 * @date 2025/04/30
 */

public interface IStrategyRepository {
    List<StrategyAwardEntity> queryStrategyAwardList(Long strategyId);

    void stroeStrategyAwardSearchRateTables(String key, Long rateRange, HashMap<Integer, Integer> shuffleStrategyAwardSearchRateTables);

    int getRateRange(Long strategyId);

    int getRateRange(String key);

    Integer getStrategyAwardAssemble(String key, int rangeKey);

    StrategyEntity queryStrategyEntityByStratrgyId(Long strategyId);

    StrategyRuleEntity queryStraregyRule(Long strategyId, String ruleModel);
}

